Method and apparatus for delivering selected multimedia content to a user in pervasive computing environments

ABSTRACT

A method and apparatus for delivering selected multimedia content to a user of a mobile device in a pervasive computing environment is disclosed. Communications with a mobile device in the environment is established. A user profile and viewing history is received from the mobile device. Multimedia content is selected and sequenced for viewing by the user. The selection of multimedia content is based on search logic that includes the user profile and viewing history. Metadata is transmitted to the mobile device that is associated with the selected multimedia content.

RELATED APPLICATIONS

The present application is a continuation of, and claims priority to each of, U.S. patent application Ser. No. 16/542,842, filed Aug. 16, 2019, and entitled, “METHOD AND APPARATUS FOR DELIVERING SELECTED MULTIMEDIA CONTENT TO A USER IN PERVASIVE COMPUTING ENVIRONMENTS”, which is a continuation of U.S. patent application Ser. No. 14/181,974 (now U.S. Pat. No. 10,390,091), filed Feb. 17, 2014, and entitled “METHOD AND APPARATUS FOR DELIVERING SELECTED MULTIMEDIA CONTENT TO A USER IN PERVASIVE COMPUTING ENVIRONMENTS”, which is a continuation of U.S. patent application Ser. No. 10/192,212 (now U.S. Pat. No. 8,656,004), filed Jul. 10, 2002, and entitled, “METHOD AND APPARATUS FOR DELIVERING SELECTED MULTIMEDIA CONTENT TO A USER IN PERVASIVE COMPUTING ENVIRONMENTS”, the entireties of which applications are hereby incorporated by reference herein.

TECHNICAL FIELD

This subject application relates to multimedia content delivery in pervasive computing environments. Specifically, a method and apparatus are defined to customize delivery and minimize duplication of information for users in the environments.

BACKGROUND

A pervasive computing environment contains a high density of mobile and non-mobile information devices. IT provides easy access to information at any time, from any place, on any device. These devices span a wide range of complexity. They include set top boxes, stereos, radios, televisions, and other applications that are familiar to consumers. They also include handheld and wearable devices that are embedded in clothing and jewelry. These devices can adapt their behavior to their user and surroundings.

There are many research and prototyping activities in this field. The article “Pervasive Computing: Vision ad Challenges” by Satyanarayanan in IEEE Personal Communications, August 2001 is an excellent overview of these efforts. It is incorporated by reference. Other relevant articles include “Mobile Information Access” by Satyanarayanan in IEEE Personal Communications, February 1996 and “Uniform Web presence Architecture for People, Places, and Things” by Debaty and Caswell in IEEE Personal Communications, August 2001.

Personal area networks (PANS) allow devices in the same environment to establish wireless connections, discover resources, and share information. The article “Wireless Networked Digital Devices: A New Paradigm for Computing and Communication” by Zimmerman in IBM Systems Journal, Volume 38, Number 4, 1999 provides an excellent overview of these technologies. Bluetooth, IrDA, and HomeRF are examples of wireless technologies. Specifications are available at http://www.bluetooth.org, http://www.irda.org, and http://www.homerf.org, respectively. Users in pervasive computing environments receive information from many sources. Radio and television stations transmit news programs containing reports about local, national, and international events. Streaming and non-streaming multimedia content is available from the Internet.

These sources often duplicate information. Competing television stations discuss the same events. Each broadcaster duplicates reports on their local and national programs. Information from popular Web portals duplicates that which is available from radio and television stations. For example, a consumer may visit a Web portal and learn about important news developments of the day. The information may be repeated on a radio program during a commute home. Finally, a television program delivered by a set top box may also report the same information.

Consumers need an efficient way to assimilate this information. Duplication should be minimized unless a user specifically requests additional details or perspectives on an event or topic. Maximum benefit must be obtained from the time spent viewing news and other information.

Limitations of the prior art are overcome and technical advance is made by the various embodiments of the subject application. It minimizes duplication of information and, therefore, enables a user to efficiently assimilate information from many different content providers (e.g. radio, television, and Web) in pervasive computing environments.

Content providers generate and transmit metadata for their information. This metadata provides additional detail about the content (e.g. content provider, date/time of delivery, topic, duration, etc.).

Mobile and non-mobile devices (e.g., personal computers, personal digital assistants, radios, set top boxes, televisions) are enhanced to contain short-range wireless transceivers. The devices use these transceivers to communicate with each other and select content that is most valuable for a consumer and do not duplicate information that has already been received by that individual.

In an embodiment of the subject application, mobile devices maintain a user profile and viewing history. The user profile specifies the topics in which the user has an interest. A priority may be assigned to each topic. Preferences for different content providers may also be indicated. The viewing history stores metadata for information that has already been received by that individual.

A typical usage scenario is: (1) A mobile device establishes wireless communication with a non-mobile device in an environment. (2) The mobile device transmits a user profile and viewing history to the non-mobile device. (3) The non-mobile device uses this data to select and sequence content for that user. (4) As the non-mobile device presents content, it transmits metadata associated with that content. (5) The mobile device receives this metadata and updates its viewing history.

A mobile device can establish transient wireless communication with a sequence of non-mobile devices in one or more pervasive computing environments. Communication is established when the mobile and non-mobile device are in proximity to each other.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject embodiments of the present application will be more fully understood upon consideration of the following detailed description and the attached drawings wherein:

FIG. 1 shows the system architecture for the first embodiment of the present application;

FIG. 2 shows additional detail for a non-mobile and mobile device.

FIG. 3 shows the message sequence for the first embodiment of the present application.

FIG. 4 shows a block diagram of a representative non-mobile device (viz. cable television set top box).

FIG. 5 shows a block diagram of a representative non-mobile device (viz. personal computer with Web browser).

FIG. 6 shows a block diagram of a representative mobile device (viz. personal digital assistant).

FIG. 7 shows a graphical user interface for examining and modifying the user profile that is stored on a mobile device.

FIG. 8 shows a graphical user interface for examining the viewing history that is stored on a mobile device.

FIGS. 9-10 are flowcharts for a non-mobile device.

FIG. 11 is a flowchart for a mobile device.

FIG. 12 shows the message sequence for the second embodiment of the present application.

FIG. 13 shows a flowchart for a non-mobile device.

FIG. 14 shows a sample schema for content metadata.

FIG. 15 shows sample metadata for radio content.

FIG. 16 shows sample metadata for television content.

FIG. 17 shows sample metadata for web content.

DETAILED DESCRIPTION

FIG. 1 shows the system architecture for the first embodiment of the present application. Content providers 102 generate multimedia content and metadata that is stored in a server 104 (e.g., streaming and non-streaming Internet content, television programs, or radio programs). This information is accessible via backbone network 106. Backbone network 106 can use wide area network technologies in the current art (e.g., circuit switching, packet switching). Multiple access networks 110 connect to the backbone network 106. Access network 110 can use a variety of technologies in the current art (e.g., hybrid fiber coax, digital subscriber loop, wireless).

The current art provides techniques by which content providers may generate, store, and transmit metadata for their information. For example, the MPEG-2 video format enables metadata to be transmitted as a component of a digital video stream. The book “Digital Video: An Introduction to MPEG-2 (Digital Multimedia Standards Series)” by Haskell et al., Chapman and Hall, 1996 provides details.

Multiple pervasive computing environment 112 may contain non-mobile devices 114-120 and mobile devices 122-124. Mobile devices 122-124 enter and exit these environments. Transient short-range wireless connections 126-128 are automatically established between a mobile device and a non-mobile device via techniques in the current art.

As a mobile device 122 moves within an environment 112 (or moves among environments), connections are dynamically established and dropped to devices. Data is exchanged that enables the devices to adjust their behavior for the user of the mobile device and minimize repetitive presentation of information.

A statistics server 108 can accumulate statistics on the content that is selected for presentation. It can also accumulate statistics about advertising that is inserted into the presentation. Reports can be generated for all of these activities. This data can be shared with content providers for a fee.

FIG. 2 shows additional detail for an exemplary non-mobile device 114 and an exemplary mobile device 122 in an environment 112. The non-mobile device 114 contains a software controller 202, a server having stored multimedia content and metadata 204, and a short-range wireless transceiver 206. Components of the software controller may be dynamically downloaded to the device by using Java software technology. See http://www/javasoft.com for additional details. The mobile device 122 contains a software controller 208, short-range wireless transceiver 210, user profile 212 and viewing history 214. The user profile is generated based on data gathered by the mobile device 122 and preferences inputted by the user. Such preferences can include the type of content that is of interest to the user, the subject matter of interest, dates of interest, etc. The viewing history is compiled by the mobile device 122 based on the data gathered from the short-range wireless transceiver 210. As the user travels from one environment to another, the content that the user is exposed to is captured by the short-range wireless transceiver 210. This data is used to help filter out desired content stored on the non-mobile device. This user profile and viewing history 214 are transmitted to a non-mobile device 114 so it can customize its behavior for the owner of the mobile device.

FIG. 3 shows how a mobile device 122 interacts with two non-mobile devices 114-116 and a statistics server 106. The mobile device 122 and non-mobile device 114 establish a connection via messages 301 according to techniques in the current art. Message 302 is then transmitted to the non-mobile device. This message contains the user profile and viewing history. The non-mobile device uses this data to select and sequence stored multimedia content. As content is presented, the metadata for the content is transmitted to the mobile device 122. This done by messages 303-305. This metadata is stored in the viewing history 214 on the mobile device 114. This is shown as 306 on the diagram.

The mobile device 122 and non-mobile device 116 establish a connection via messages 307 according to techniques in the current art. Message 308 is then transmitted to the non-mobile device. This message contains the user profile and viewing history. The non-mobile device 116 uses this data to select and sequence stored multimedia content. As content is presented, the metadata for that content is transmitted to the mobile device 122. This is done by messages 309-311. This metadata is stored in the viewing history 214 on the mobile device. The mobile device 122 then drops its connection to non-mobile device 116. This is shown as 312 on the diagram.

The mobile device 122 may periodically transmit statistics to the statistics server 108. This data may indicate the specific multimedia content that was received by the mobile device. The statistics server can use this information to generate reports that can be distributed to content providers. Mobile devices may also be billed for this service.

FIG. 4 shows a block diagram of a representative non-mobile device 114 (e.g., cable television set top box). The set top box connects to the access network 110 (e.g., hybrid fiber coax network) and receives television signals. These signals are supplied to one or more audio/video RF CATV demodulators 402. Output from the demodulators is supplied to one or more MPEG-2 decoders 404. Output from the decoders is stored in the multimedia content and metadata storage server 204.

The software controller 202 receives requests from a mobile device 122 via the short-range wireless transceiver 206. In response to these requests, the software controller 202 examines the metadata in server 204 and selects a subset of the content for that user. The content is retrieved from server 204 and output via digital/analog converter 406 and audio/video RF CATV modulator 408 to a television 410. The content can be viewed immediately or scheduled for viewing at a later date and/or time.

Several products in the current art can be enhanced for the present application. For example, digital video recorders are available from TiVO, Replay TV, and Microsoft. These products can be programmed to receive and store digital television content. Additional details can be found at http://www.tivo.com, http://www.replaytv.com, http://www.microsoft.com.

FIG. 5 shows a block diagram of another representative non-mobile device 116 (e.g., personal computer). This device contains a Web browser 502. The software controller 202 receives requests from a mobile device 124 via the short-range wireless transceiver 206. In response to these requests, the software controller 202 examines the metadata in server 204 and selects a subset of the content for that user. The content is retrieved from server 204 and output via the Web browser 502.

FIG. 6 shows a block diagram of a representative mobile device 122 (e.g., cell phone, personal digital assistant). The software controller 208 coordinates execution of the various system components. Long-range wireless transceiver 604 is used for communication with a mobile switching center (MSC) in the current art. Short-range wireless transceiver 210 is used for communication with other devices in the local environment. The audio 608, data 610, and video 612 subsystems are used to input and output those specific media types. A Web browser 614 enables streaming and non-streaming multimedia content from the content providers 102 to be retrieved and displayed. A Web server 616 receives and processes requests for Web pages 618. These Web pages enable the user profile 212 to be examined and modified. They also enable the viewing history 214 to be examined. Any device disclosed herein can include hardware components such as a processor, a computing device, and/or a computer-readable storage medium or computer-readable storage device storing instructions for controlling the processor or the computing device to perform certain steps as disclosed herein.

FIG. 7 shows an exemplary Web page 618 for examining and modifying the user profile 212 that is stored on the mobile device 122. A user profile may specify a prioritized list of information sources 704. The information sources 704 may represent a number of different media such as broadcast, cable, web pages, audio downloads, etc. The sample data shows that the sources CNN, NBC, ABC, CBS, Yahoo and RealAudio are to be used. A user profile may also specify a prioritized list of topics 706. The sample data shows that the topics AT&T, economy, terrorism, severe weather, and New York City are to be used. The duration of an information summary 708 can also be defined. The sample data shows that the user wishes to view a composite information summary for thirty minutes. These thirty minutes will be filled with multimedia content that is retrieved from the content internally stored on the non-mobile device. A check box 7110 enables the user to request that duplication of information be minimized. A submit button 712 and cancel button 714 submit and cancel form submission.

FIG. 8 shows a Web page 618 for examining the viewing history 208 that is stored on the mobile device 122. The page contains hyperlinks to all of the content that has recently been viewed by the consumer. The hyperlinks are presented in the same sequence as the corresponding content was viewed. Previous 812 and next 814 buttons provide access to additional pages of hyperlinks. Each hyperlink allows the consumer to revisit the particular content described by the hyperlink.

FIG. 9 is a flowchart for a non-mobile device 114. It shows the execution of a thread that receives multimedia content and metadata from content providers and decides if that information will be saved in storage 202. Execution begins at step 902. Multimedia content and metadata is received from content providers at step 904. A decision is made at step 906 if this information should be saved. If not, execution continues at step 904. Otherwise, it is determined if older information must be deleted to obtain sufficient storage for this new information at step 908. If no, execution continues at step 912. Otherwise, execution continues at step 910 and the older information is deleted. The new content and metadata is saved in storage 202 at step 912. The routine is then repeated beginning at step 904.

FIG. 10 is a flowchart for a non-mobile device 114. It shows the execution of a thread that waits for a connection from a mobile device 122 and communicates with the device. Execution begins at step 1002. Execution blocks at step 1004 until a short-range wireless connection 126 is established with mobile device 122. The user profile 206 and viewing history 208 are received from that mobile deice at step 1006. Based on this information, multimedia content is selected from storage 202 at step 1008. The sequence in which this content will be displayed is also determined. The multimedia content is displayed at step 1010. The metadata for that content is transmitted to mobile device 122 at step 1012. A check is done at step 1014 to determine if the connection to the mobile device has dropped. If yes, execution continues at step 1004. Otherwise, execution continues at step 1008.

FIG. 11 is a flowchart for a mobile device 122. Execution starts at step 1102. Execution blocks at step 1104 until a short range wireless connection 126 is established with a non-mobile device 114. The user profile 212 and viewing history 214 are transmitted to the non-mobile device at step 1106. The non-mobile device uses that data as outlined in FIG. 10. Execution blocks at step 1108 until metadata is received from the non-mobile device. This metadata is stored in a viewing history 214 at step 1110 A check is done at step 1112 to determine if the connection to the non-mobile device was dropped. If yes, execution continues at step 1104. Otherwise, execution continues at step 1108.

FIG. 12 shows how a mobile device 122 interacts with two non-mobile devices 114-116 and a statistics server 108. The mobile device 122 and non-mobile device 114 establish a connection via messages 1201 according to techniques in the current art. Message 1202 is then transmitted to the non-mobile device. This message contains the user profile and viewing history. The non-mobile device uses this data to select stored multimedia content. Metadata for the selected content is returned to the mobile device as message 1203. The mobile device examines this metadata and selects and sequences the content for the user. The selection is transmitted to the non-mobile device 114 as message 1204. As content is presented, the metadata for that content is transmitted to the mobile device 122. This is done by messages 1205-1206. This metadata is stored in the viewing history 214 on the mobile device. The mobile device 122 then drops its connection to the non-mobile device 114. This is shown as 1207 on the diagram.

The mobile device 122 and non-mobile device 116 establish a connection via messages 1208 according to techniques in the current art. Message 1209 is then transmitted to the non-mobile device. This message contains the user profile and viewing history. The non-mobile device uses this data to select stored multimedia content. Metadata for the selected content is returned to the mobile device as message 1210. The mobile device examines this metadata and selects and sequences the content for the user. The selection is transmitted to the non-mobile device 116 as message 1211. As content is presented, the metadata for that content is transmitted to the mobile device 122. This is done by message 1212. This metadata is stored in the viewing history 214 on the mobile device. The mobile device 122 then drops its connection to non-mobile device 116. This is shown as 1213 on the diagram.

The mobile device 122 may periodically transmit statistics to the statistics server 108. This data may indicate the specific multimedia content that was received by the mobile device. The statistics server can use this information to generate reports that can be distributed to content providers. Mobile devices may also be billed for this service.

FIG. 13 is a flow chart for non-mobile device 114. It shows the execution of a thread with mobile device 122 to determine what metadata should be communicated to mobile device 122. Execution begins at step 1302. Non-mobile device 114 waits for connection to mobile device 122 at step 1304. The non-mobile device 114 receives a user profile and viewing history from mobile device 122 at step 1306. Metadata is transmitted from non-mobile device 114 to mobile 122 that describes all of the content stored by non-mobile device 114 at step 1308. The mobile device 122 selects content based on the metadata and transmits its content selection and the sequencing for that content at step 1310. The selection multimedia content is displayed by non-mobile device 114 at step 1312. The metadata for the selected content is transmitted to the mobile device at step 1314. A determination is made as to whether the connection to the mobile device has been dropped at step 1316. If the connection has been dropped, the non-mobile device waits for connection to the same or another mobile device and execution returns to step 1304. If the connection has not been dropped, the non-mobile device retransmits a list of all stored content to the mobile device and execution continues at step 1308.

FIG. 14 shows a sample generic schema for content media that is transmitted to a mobile device. The schema comprises a plurality of elements that are used to identify multimedia content stored by a non-mobile device and available to the user. Included in these elements is an element 1402 that describes the content type. Types of content include, but are not limited to, radio, television, web pages, etc. Elements 1404, 1406 and 1408 illustrate specific elements for particular types of media. Element 1404 lists the metadata for radio content and includes data such as title, source, date, time, duration of content and keywords associated with the content. Element 1406 lists the metadata for television content and includes data such as title, source, date, time, duration and keywords. Element 1408 lists the metadata for web-based content and includes title, source and keywords. Each data piece of the metadata description is then elaborated in elements 1410-1422.

FIG. 15 shows a more specific example of sample metadata for radio content. Associated with each of the data factors listed above (e.g., title, source, etc.) more detailed information is provided. In the current example, the multimedia content is a report on stem cell research. The source of the report (e.g., ABC news) is provided along with the data and time of the report and its duration. Any and all of the metadata can be searched to determine if the associated multimedia content is of interest to the user. The metadata is also used to reduce duplicity of content presented to the user.

FIG. 16 shows a more specific example of sample metadata for television content. Associated with each of the data factors listed above (e.g., title, source, etc.) more detailed information is provided. In the current example, the multimedia content is a report on genetic engineering. The source of the report (e.g., CBS news) is provided along with the data and time of the report and its duration. Whether the uses wishes to view this content may depend on a number of factors. Some considerations may be what content the user has already been exposed to as identified by the mobile device, historical data regarding the user's preferences (e.g., a preference for particular media, media sources, or reporters). Depending upon the amount of content that meets a user's preferences, the amount of content may need to be pared down. Such reduction may occur based on these factors.

FIG. 17 shows a more specific example of sample metadata for Web content. In the current example, the multimedia content is a report on genetic engineering. The source of the report (e.g., http://www.pbs.org/science/gene-therapy.ra) is provided along with the data and time of the report and its duration. Once all of the metadata is received by the mobile device, it is presented to the user. The user can then select any of the associated multimedia content for viewing and/or listening.

While the subject application has been described with reference to specific embodiments, modifications and variations of the various embodiments may be constructed without departing from the scope and spirit of the embodiments as defined in the following claims. 

What is claimed is:
 1. A method, comprising: determining, by first equipment comprising a processor, multimedia content associated with a content server based on a user profile and previously-viewed multimedia content that was previously viewed via second equipment, resulting in determined multimedia content; and transmitting, by the first equipment to the second equipment, metadata associated with the determined multimedia content, wherein transmitting the metadata results in a reduction in duplicate content being transmitted by the content server to the second equipment relative to an amount of content that would be transmitted to the second equipment without transmitting the metadata associated with the determined multimedia content.
 2. The method of claim 1, wherein the second equipment comprises a mobile device.
 3. The method of claim 2, wherein the mobile device is a smart phone, and the determined multimedia content comprises video content.
 4. The method of claim 1, wherein the first equipment comprises a non-mobile device.
 5. The method of claim 4, wherein the non-mobile device comprises a home electronic device.
 6. The method of claim 1, wherein the user profile comprises a preference defined by user input attributed to a user identity associated with the user profile.
 7. The method of claim 1, wherein the metadata comprises content provider information representative of a content provider identity associated with the content server, a topic of the determined multimedia content, and a duration of the determined multimedia content.
 8. A system, comprising: a processor; and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, comprising: obtaining multimedia content from a content server based on a user profile associated with a user identity and a history of previously viewed multimedia content that was viewed in association with the user identity, the obtaining resulting in obtained multimedia content; and transmitting, to a device associated with the user profile, the obtained multimedia content and metadata associated with the obtained multimedia content, the metadata comprising information usable to update history data representative of a history of the previously viewed multimedia content at the device.
 9. The system of claim 8, wherein the obtained multimedia content comprises at least one of audio content or video content.
 10. The system of claim 8, wherein the user profile comprises information representative of a topic of interest applicable to the user identity associated with the user profile.
 11. The system of claim 10, wherein the information comprises a priority assigned to the topic of interest.
 12. The system of claim 8, wherein at least one of the user profile or the history data comprises content provider information, date and time of delivery of respective multimedia content of the previously viewed multimedia content, a topic of the respective multimedia content, and a duration of the respective multimedia content.
 13. A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations, comprising: accessing, from a content data store and based on a user profile, content previously viewed via a first multimedia device associated with the user profile; and transmitting, to the first multimedia device, the content and metadata associated with the content, wherein the content is received from the content data store and results in a reduction in duplicate content being transmitted to a second multimedia device relative to an amount of content that would be transmitted to the second multimedia device without accessing the content and without transmitting the content and the metadata associated with the content.
 14. The non-transitory machine-readable medium of claim 13, wherein the content comprises audio content.
 15. The non-transitory machine-readable medium of claim 13, wherein the second multimedia device receives the user profile.
 16. The non-transitory machine-readable medium of claim 13, wherein the first multimedia device comprises a mobile device, and wherein the second multimedia device comprises a non-mobile device.
 17. The non-transitory machine-readable medium of claim 13, wherein the second multimedia device receives history data representative of a history of previously viewed multimedia content.
 18. The non-transitory machine-readable medium of claim 13, wherein the user profile indicates a topic of interest applicable to a user identity associated with the user profile.
 19. The non-transitory machine-readable medium of claim 13, wherein the operations further comprise selecting a content provider identity associated with a content provider and the content data store based on respective preferences for different content provider identities contained in the user profile.
 20. The non-transitory machine-readable medium of claim 13, wherein the content comprises advertising information. 